home *** CD-ROM | disk | FTP | other *** search
- ; Booter v 1.2 26.10.1993 by Holger Janz
- ; to boot game disks at 16MHz from desktop
-
- anfang: pea text ;text output
- move.w #9,-(SP)
- trap #1
- addq.l #6,SP
-
- move.w #1,-(SP) ;key request
- trap #1
- addq.l #2,SP
-
- cmp.b #'q',D0
- beq ende ;if pressed <q> then end
-
- pea boottext ;text output
- move.w #9,-(SP)
- trap #1
- addq.l #6,SP
-
- move.w #$01,-(SP)
- move.w #$00,-(SP)
- move.w #$00,-(SP)
- move.w #$01,-(SP)
- move.w #$00,-(SP)
- move.l #$00,-(SP)
- pea buffer
- move.w #$08,-(SP) ;Xbios 8
- trap #14 ;read boot sector
- lea $14(SP),SP
-
- tst.l D0 ;error ?
- bne anfang ;then back
-
- movea.l #buffer,A0 ;test magic number $1234
- move.l #$00,D1
- move.w #$FF,D0
- loop1: add.w (A0),D1
- adda.l #$02,A0
- dbra D0,loop1
- cmp.w #$1234,D1
- bne anfang ;not executable
-
- move.w #$00,-(SP) ;low rez
- move.l #-$01,-(SP)
- move.l #-$01,-(SP)
- move.w #$05,-(SP)
- trap #14
- lea $0C(SP),SP
-
- clr.l -(SP) ;switch to Supervisor-Modus
- move.w #$20,-(SP)
- trap #1
- addq.l #6,SP
- move.l D0,-(SP) ;resulte to stack
-
- bsr.s buffer ;jump to boot routine
-
- move.w #$20,-(SP) ;back to User-Modus
- trap #1
- addq.l #6,SP
-
- move.w #$01,-(SP) ;back to mid rez
- move.l #-$01,-(SP)
- move.l #-$01,-(SP)
- move.w #$05,-(SP)
- trap #14
- lea $0C(SP),SP
-
-
- ende: pea exittext ;text output
- move.w #9,-(SP)
- trap #1
- addq.l #6,SP
-
- clr.w -(SP) ;bye
- trap #1
-
- buffer: DS.B 512
- text: DC.B $1B,$45,' BOOTER V 1.2 by H.Janz 93',$0A,$0D
- DC.B '-----------------------------',$0A,$0D
- DC.B 'put boot-disk into drive A and press a key',$0A,$0D
- DC.B '<Q> quit',$0A,$0D,$00
- boottext: DC.B $0A,$0D,'load and execute boot sectors',$0A,$0D,$00
- exittext: DC.B $0A,$0D,'quit program',$0A,$0D,$00
- END
-